﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AppServidor
{
    class Simbolo
    {
       /* nombre:nombre de la variable o metodo o pista
          tipo dato: int,cadena,boolean no aplica si el simbolo es un procedimiento o pista
          ambito: global o local
          tipo de simbolo: metodo,variable,pista,funcion
          padre: indica si el simbolo pertenece a otro en la tabla*/

        String nombre,tipoSim, tipoDato,ambito,padre;
        Object valor;
        int id;
        Boolean keep;

        public Simbolo(int id, String nom, String tipos, String tipod, Object valor, String amb, String dad, Boolean keep) {
            this.id = id;
            nombre = nom;
            tipoDato = tipod;
            tipoSim = tipos;
            this.valor = valor;
            ambito = amb;
            padre = dad;
            this.keep = keep;
        }

        public string Nombre
        {
            get { return nombre; }
            set { nombre = value; }
        }
        public string TipoSim
        {
            get { return tipoSim; }
            set { tipoSim = value; }
        }
        public string TipoDato
        {
            get { return tipoDato; }
            set { tipoDato = value; }
        }
        public string Ambito
        {
            get { return ambito; }
            set { ambito = value; }
        }
        public string Padre
        {
            get { return padre; }
            set { padre = value; }
        }
        public Object Valor
        {
            get { return valor; }
            set { valor = value; }
        }
        public int Id
        {
            get { return id; }
            set { id = value; }
        }

        public bool Keep
        {
            get { return keep; }
            set { keep = value; }
        }

    }
}
